package com.heatup.apt.management.service.company;

import com.baomidou.framework.service.ISuperService;
import com.baomidou.mybatisplus.plugins.Page;
import com.heatup.apt.model.company.CompanyInfo;
import com.heatup.apt.model.order.OrderCompanyDetailInfo;

import java.math.BigDecimal;

/**
 * CompanyInfo 表数据服务层接口
 */
public interface CompanyInfoService extends ISuperService<CompanyInfo> {


    /**
     * 查询企业列表
     *
     * @param companyInfoPage 分页插件类
     * @param map             参数
     * @return
     */
    Page<CompanyInfo> selectCompanyList(Page<CompanyInfo> companyInfoPage, CompanyInfo map);


    /**
     * 查询是否存在相同的公司名
     *
     * @param companyInfo 企业
     * @return true 存在/false 不存在
     */
    boolean checkByName(CompanyInfo companyInfo);

    /**
     * 保存企业
     *
     * @param companyInfo 企业
     * @param userId 用户ID
     * @return true 成功/false 失败
     */
    boolean saveCompany(CompanyInfo companyInfo, Integer userId);

    /**
     * 查询企业余额
     * @param companyId 企业
     * @return 企业余额
     */
    BigDecimal selectCompanyAmountById(Long companyId);

    /**
     * 查询企业指定年月订单列表
     *
     * @param orderCompanyDetailInfo 企业
     * @return
     */
    String queryOrderDetailList(OrderCompanyDetailInfo orderCompanyDetailInfo);
}